import type { IStructure } from "./structure";

export interface IMap<K, V> extends IStructure {
  hasKey(key: K): boolean;
  get(key: K): V | undefined;
  set?(key: K, value: V): boolean;
  put?(key: K, value: V): boolean;
  hashCode?(key: K): number;
  remove(key: K): boolean;
  keys(): K[];
  values(): V[];
}
